var express=require("express");
var bodyParser=require("body-parser");
var Student=require("./student.js");
var app=express();
app.use(express.static(__dirname));//托管文件
var urlParser=bodyParser.urlencoded({extended:false});
app.listen(8002);

app.get("/",function(req,res){
	res.sendFile(__dirname+"/index.html");
})

//分页
app.get("/list",function(req,res){
	var age=!req.query.age?1:req.query.age;
	console.log(age);
	var pageSize=5;//一页多少条
	var currentPage=req.query.page;//当前第几页
	var condition={};//当前第几页
	var skipnum=(currentPage-1)*pageSize//跳过数
	var sort={userage:age};//排序
	Student.count(condition,function(err,result){
		var count=result;//总条数
		Student.find(condition).skip(skipnum).limit(pageSize).sort(sort).exec(function(err,result){
			if(err){
				console.log("Error:"+err);
			}
			else{
				var obj={total:count/pageSize,data:result};
				res.send(obj);
			}
		})
	})
})




//保存
app.post("/save",urlParser,function(req,res){
	var u={username:req.body.name,userage:req.body.age,usersex:req.body.sex};
	console.log(req.body.id);
	if(req.body.id){
		Student.update({_id:req.body.id},u,function(err,result){
			if(err)console.error(err);
			if(result.ok>0){
				res.send("success");
			}else{
				res.send("fail");
			}			
		})
	}else{
		var stu=new Student({
			username:u.username,
			userage:u.userage,
			usersex:u.usersex
		})
		stu.save(function(err,result){
			if(err)console.error(err);
			if(result._id){
				res.send("success");
			}else{
				res.send("fail");
			}
		})
	}

})
//删除
app.post("/del",urlParser,function(req,res){
	console.log("delete...");
	Student.remove({_id:req.body.id},function(err,result){
		if(err)console.error(err);
		console.log(result,result.ok)
			if(result.result.ok>0){
				res.send("success");
			}else{
				res.send("fail");
			}
		})	
})

	//搜索事件	
	app.post("/search",urlParser,function(req,res){
	var a= req.body.txt;
	console.log(a)
	   //查询出所有用户名中有'a'的名字，且i代表不区分大小写
	    var regexp =new RegExp(a,"i");
	    var whereStr={username:{$regex:regexp}};
	    Student.find(whereStr, function(err, result){
	        if (err) {
	            console.log("Error:" + err);
	        }
	        else {
	            console.log("Res:" + result);
	            res.send(result);
	        }
	    })
	})

